﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Design;



namespace UI.Desktop
{
    public partial class frmGestionTurnos : Form
    {
        public frmGestionTurnos()
        {
            InitializeComponent();
            TxtFecha.Visible = false;
            TxtHora.Visible = false;
            
                
            
            
        }

        private void cbPaciente_Click(object sender, EventArgs e)
        {
           
        
            Business.Entities.Paciente pac = new Business.Entities.Paciente();
            DataSet dsPac = new DataSet();
            dsPac = pac.ObtenerListaPacientes();
            ObtenerPacientes(dsPac);
        }

        

        private void ObtenerPacientes(DataSet dsPac)
        {
            cbPaciente.Text = "Seleccione el paciente";
            cbPaciente.DataSource = dsPac.Tables["Paciente"];
            cbPaciente.DisplayMember = dsPac.Tables["Paciente"].Columns[1].Caption.ToString();
        }

        public void btnBuscar_Click(object sender, EventArgs e)
        {
            try
            {
                Business.Entities.Turno Tur = new Business.Entities.Turno();
                Business.Entities.Paciente Pac = new Business.Entities.Paciente();
               

                DataSet dsPac = new DataSet();
                DataTable dsTur = new DataTable();
                string Concatenado = cbPaciente.Text.ToString();
                dsPac = Pac.ObtenerListaPacientesConNombreApellido(Concatenado);

                string Id_Paciente = dsPac.Tables["Paciente"].Rows[0][0].ToString();
                dsTur = Tur.ObtenerTurno(Id_Paciente);
                dtGestionTurnos.DataSource = dsTur;
                
            }



            catch 
            {
                
            }
        
        
        
        }

        private void frmGestionTurnos_Load(object sender, EventArgs e)
        {


        }

        private void btnCerrarTurnos_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnEliminarTurno_Click(object sender, EventArgs e)
        {
            try
            {

                Business.Entities.Turno Tur = new Business.Entities.Turno();
                Business.Entities.Paciente Pac = new Business.Entities.Paciente();

                DataSet dsTur = new DataSet();
                DataSet dsPac = new DataSet();
                string Concatenado = cbPaciente.Text.ToString();
                dsPac = Pac.ObtenerListaPacientesConNombreApellido(Concatenado);
                string Id_Paciente = dsPac.Tables["Paciente"].Rows[0][0].ToString();
                string fecha = TxtFecha.Text;
                string hora = TxtHora.Text;
                dsTur = Tur.ConseguirTurno(Id_Paciente, fecha, hora);
                string id_turno = dsTur.Tables["Turnos"].Rows[0][0].ToString();
                Tur.BajaTurno(id_turno);


                MessageBox.Show("El Turno fue cancelado con exito", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);




                btnBuscar_Click(sender, e);
            }

            catch 
            {
                MessageBox.Show("Debe Seleccionar el turno que desea eliminar", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }

            
          
           


        }

        private void dtGestionTurnos_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            
            TxtFecha.Text = dtGestionTurnos.Rows[e.RowIndex].Cells[2].Value.ToString();
            TxtHora.Text = dtGestionTurnos.Rows[e.RowIndex].Cells[3].Value.ToString();
        }

       


            
            

            

        

       
        }
    }

